The present invention relates generally to media library apparatus based on a so-called RAID scheme and methods of controlling the media library apparatus. More particularly, the present invention relates to an improved media library apparatus and method of controlling the media library apparatus which can enhance efficiency of data write processing on media by allowing the write processing to continue even after all substitute sectors of the media are used up.
Library apparatus for handling recording media organized in RAID (acronym for xe2x80x9cRedundant Array of Inexpensive Disksxe2x80x9d) arrays have been known extensively today. In a typical example of such library apparatus, as shown in FIG. 4, a plurality of (six in the illustrated example) library units U1-U6 are simultaneously activated in response to data read/write control instructions (e.g., in the form of an electric signal), given from a not-shown higher-order processor such as a personal computer or via a control panel P, so as to carry out data read/write processing while performing a so-called xe2x80x9cdata striping processxe2x80x9d on media inserted in respective drive devices of the library units U1-U6. Namely, a RAID controller 6 of the library apparatus issues control instructions, in response to which each of the library units U1-U6 uses its holder/transporter to automatically transport a designated medium from one of a multiplicity of storage shelves or cells to the associated drive device. After completion of the media transportion within all the library units U1-U6, the drive devices are activated in a parallel fashion in order to carry out the data read/write processing while performing the data striping process. The above-mentioned RAID controller 6, which comprises a microcomputer including a MPU, a ROM, a RAM (all not shown), etc., controls the transportation of the media by the holder/transporters and also controls the data read/write processing by the parallelly-driven drive devices.
In the above-mentioned xe2x80x9cdata striping processxe2x80x9d, each complete data is broken down into a plurality of lower-order units called xe2x80x9cstripe unitsxe2x80x9d each having a predetermined data size such as a bit, byte or predetermined data block, and the thus-obtained stripe units are then circulatively delivered to the individual drive devices so that the stripe units are written distributively across the media inserted in the respective drive devices. In both the data read processing and the data write processing during the data striping, a plurality of the media to be processed concurrently are accessed simultaneously while being regarded as a single medium. By thus operating the plurality of drive devices in a parallel or concurrent fashion, the conventional media library apparatus have been attempting to substantially increase a data transmission speed in accessing a large quantity of data. However, reliability of the library apparatus would unavoidably deteriorate as the number of the drive devices to be operated in parallel increases. Thus, more sophisticated disk array apparatus have been proposed to date, which are designed to achieve higher reliability by employing redundancy information; for example, duplicate copying of data in the case of RAID level 1, data redundancy by Hamming code in the case of RAID level 2, or data redundancy by parity in the case of RAID level 3. Such sophisticated disk array apparatus employing the redundant information are also commonly called RAID (Redundant Array of Inexpensive Disks) handling apparatus.
The conventionally-known RAID library apparatus are also arranged in such a manner that in case a trouble, i.e., an abnormal condition, such as a malfunction or complete failure (e.g., access error), occurs in any one of the media on which the data read/write processing is being performed concurrently, the data and redundancy information are read out from all the other concurrently-processed media free of trouble and then a predetermined data recovery process is performed, on the basis of the read-out data and redundancy information, to recover the data of the medium where there has occurred the trouble or abnormal condition. In addition, the conventionally-known RAID library apparatus use hard disks as the media, but none of them use non-fixed, transportable media.
Although DVDs (Digital Versatile Disks) have been used more and more popularly as high-density digital recording media in recent years, there has not yet been proposed an efficient RAID library apparatus that uses such DVD media. Further, management of abnormal data etc. in the conventional RAID library apparatus has been made using only one management region.
Disk-shaped recording media, such as the above-mentioned DVDs and optical disks, generally have a plurality of tracks formed concentrically or helically about their rotational axis, and each of these tracks is divided into a predetermined number of xe2x80x9csectorsxe2x80x9d having an uniform circumpherential length. To write or read data to or from such a medium, access is made to data areas, one by one, partitioned into these sectors. Not all the tracks of the medium are usable by a user; namely, the data areas usable by the user (i.e., user data areas) are limited. Other tracks than the user data areas are used as a xe2x80x9csubstitute sectorxe2x80x9d (or spare sector) and the like; typically, the substitute sector is for usable as a substitute for a regular sector having been found to be defective in the user data areas. More specifically, the substitute sector on the medium is a data area limitedly allocated in advance and typically having a capacity of one or more regular sectors. Note that such a substitute sector, in general, is used only in a medium where a decificient regular sector has been found, independently of RAID processing.
When some trouble (i.e., defect) has been detected in one of the regular sectors of any one of the media during the data write processing, the data is written into the substitute sector in place of the defective sector. However, in a situation where other data have already been written in the entire area of the substitute sector of the medium, i.e., where there is no empty or unused area left in the substitute sector of the medium, the data write processing can not be performed at all any longer even though one or more other data areas in the medium are still empty.
Namely, the conventionally-known RAID library apparatus would present the problem that they can not be used as RAID handling apparatus unless there is an empty area in the substitute sector in every one of the media on which the data write processing is to be performed. For example, once any one of the media has run out of empty area in the substitute sector during the data write processing, the RAID library apparatus would undesirably halt or suspend the write processing even though the data write processing has not yet been completed. In such a case, there arises a need to replace the medium, having run out of empty area in its substitute sector, with a new one and then restart the data write processing from the beginning. Thus, an enormous amount of time has to be spent in completing the data write processing and no other operations can not be performed at all during all these processing, which would result in a very poor overall processing efficiency of the library apparatus.
Further, with the conventionally-known RAID library apparatus, it was not possible f or the user to know, prior to the data write processing, a size of empty areas present in the substitute sector. Therefore, it was not possible to readily predict when the substitute sector would be used up during the course of the data write processing.
It is therefore an object of the present invention to provide a media library apparatus and method of controlling the media library apparatus which achieve reliable management of data indicative of trouble , defects or the like of the media and which also achieve an enhanced efficiency of data write processing on the media by allowing the data write processing to continue even after empty areas of a substitute sector in any one of the media is used up.
To accomplish the above-mentioned object, the present invention provides a media library apparatus which comprises: a transportation mechanism that transports a transportable medium; a storage section that stores a plurality of transportable media; a plurality of drive devices each of which reads or writes desired data on a selected one of the media; and a controller which causes a group of the media that are to be simultaneously subjected to a data striping process to be inserted in the plurality of drive devices, said controller controlling operation of the plurality of drive devices, in a parallel fashion, so as to perform the data striping process on the media inserted in the drive devices, wherein, for each of the media that are to be simultaneously subjected to the data striping process, a management region is set to store common management information, and wherein the controller obtains representative management information, in accordance with a predetermined criteria, from among the management information stored in respective ones of the management regions of the media that are to be simultaneously subjected to the data striping process and performs processing based on the obtained representative management information.
According to another aspect of the present invention, there is provided a media library apparatus which comprises: a transportation mechanism that transports a transportable medium; a storage section that stores a plurality of transportable media; a plurality of drive devices each of which reads or writes desired data on a selected one of the media; and a controller which causes a group of the media that are to be simultaneously subjected to a data striping process to be inserted in the plurality of drive devices, said controller controlling operation of the plurality of drive devices, in a parallel fashion, so as to perform the data striping process on the media inserted in the drive devices, wherein a predetermined substitute sector is formatted in each of the media, and when a defective sector is found in a user data area of the medium, the substitute sector is used in place of the defective sector, wherein for each of the media that are to be simultaneously subjected to the data striping process, a data-storing management region is set separately from the substitute sector, and wherein the controller performs control such that when there arises a situation where desired data can not be written onto any one of the media in data write processing based on the data striping process, the data write processing can be carried on using the management region.
According to the present invention arranged in the above-mentioned manner, even when all empty areas have been used up in the substitute sector of a particular one of the media, which are to be simultaneously processed, during the course of the data write processing including a data recovery process, the data write processing can be carried on appropriately without suspension, using the management region of thr particular medium. Namely, in case there is found a defective sector in any one of the media where desired data is to be written, the controller writes the desired data into the substitute sector of that media. If, however, too many regular sectors are defective, empty areas gradually run out in the substitute sector, as a result of which data can not be written into the substitute sector any longer. In such a case, the controller writes the data into the management region by determining that no more data writing can be made to the substitute sector, and later reads out the desired data from the management region when readout of such data is instructed. Thus allowing the management region to have the function as the substitute sector can effectively supplement the limited capacity of data areas of the substitute sector, which, in turn, allows the data striping process to be appropriately carried on even after the capacity of the substitute sector has been used up. Further, because the capacity of each of the management regions, unlike the substitute sectors, can be set as desired by a user and hence the user can readily know the capacity, it is possible for the user to ascertain presence/absence of any necessary empty area prior to the data write processing. However, the management regions may of course be pre-formed in the media rather than being set by the user.
A plurality of the management regions may be set redundantly in each of the media. It is possible that some defective sector occurs even in the management region, in which case no data can of course be written into the management region. Even in such a case, the redundant provision of two or more management regions for each of the media allows the data to be written into any other management region than the defective one and thereby can enhance the data integrity. Generally, in the RAID library apparatus, processing can be performed while optionally switching the medium to be processed from one medium to another. Because the number of deficient regular sectors differs among the media, the quantity of data written into the substitute sector also differs from one medium to another. Thus, by retaining the management information common to all the media that are to be simultaneously subjected to the data write processing, the present invention can properly deal with an interchange between the media.
In each of the management regions, there may be stored count information that is incremented each time the medium is loaded or unloaded to or from the drive device. In a situation where the management information of the media within a same volume fails to coincide with each other, the management information having the count information of a greatest value is regarded as a newest or latest valid value. Namely, when a given new medium has replaced another medium in the media library apparatus, the management information of the new medium is not used because its count information is still small in value. Then, the management information of any one of the other or older media is copied into the new medium; namely, the management information is updated. For this purpose, data necessary for the updating the management information is retrieved from the management information of the medium which has the newest count information.
Furthermore, according to the present invention, each of the above-mentioned non-fixed, transportable media may be transferred to and from the transportation mechanism and transported by its holder/transporter while being supported on a separate carrying support such as a tray; thus, the present invention can be constructed as a DVD (Digital Versatile Disk) library apparatus. Specifically, in most cases, tray-like carrying supports are provided for disk-shaped media, such as DVDs and CDs (Compact Disks), in a one-to-one relation (i.e., one carrying support per disk), and these disk-shaped media are each stored and, whenever necessary, transported together with the carrying support as a unit. Note that the carrying supports may be in the form of cartridges or the like other than the trays.